当前位置: 首页> 函数类别大全> filter_input_array

filter_input_array

获取一系列外部变量,并且可以通过过滤器处理它们
名称:filter_input_array
分类:过滤器Filter
所属语言:php
一句话介绍:从脚本外部获取多项输入,并进行过滤。

filter_input_array

适用PHP版本

PHP 5.2.0 及以上版本

函数说明

filter_input_array() 函数用来从指定的输入类型中获取多个输入变量,并对它们进行过滤。它通常用于对用户输入的数据进行批量过滤和验证,增强程序的安全性和数据完整性。

函数语法

array|false|null filter_input_array ( int $type [, array|int $definition = FILTER_DEFAULT [, bool $add_empty = true ]] )

参数

  • $type:指定输入的类型,常用的值有 INPUT_GET、INPUT_POST、INPUT_COOKIE、INPUT_SERVER、INPUT_ENV。
  • $definition:一个关联数组,用来定义每个输入变量的过滤器和选项,或者是单个过滤器的ID。如果不指定,默认对所有变量使用 FILTER_DEFAULT 过滤器。
  • $add_empty:布尔值,表示是否为未提交的变量添加默认值。默认值为 true。

返回值

返回一个关联数组,包含指定类型中对应变量名的过滤结果。如果没有输入数据,返回 null。如果参数非法,返回 false

示例

$filters = [
    'name'    => FILTER_SANITIZE_STRING,
    'age'     => [
        'filter' => FILTER_VALIDATE_INT,
        'options' => ['min_range' => 1, 'max_range' => 120]
    ],
    'email'   => FILTER_VALIDATE_EMAIL
];
<p>$result = filter_input_array(INPUT_POST, $filters);</p>
<p>if ($result) {<br>
echo "姓名: " . htmlspecialchars($result['name']) . "<br>";<br>
echo "年龄: " . $result['age'] . "<br>";<br>
echo "邮箱: " . $result['email'] . "<br>";<br>
} else {<br>
echo "输入无效或未提交数据。";<br>
}<br>

示例代码的说明

该示例定义了一个过滤规则数组,针对 POST 请求中的 nameageemail 三个字段分别进行过滤和验证。name 使用字符串清理过滤,age 验证为 1 到 120 之间的整数,email 验证为合法邮箱格式。函数返回过滤后的数据数组,之后程序通过判断是否成功过滤来决定输出结果。

同类函数
  •  返回与某个特定名称的过滤器相关联的id filter_id

    filter_id

    返回与某个特定名称的过滤器相关联的id
  •  获取多个变量并且过滤它们 filter_var_array

    filter_var_array

    获取多个变量并且过滤它们
  •  通过名称获取特定的外部变量,并且可以通过过滤器处理它 filter_input

    filter_input

    通过名称获取特定的外部变量,并且可以通过
  •  获取一系列外部变量,并且可以通过过滤器处理它们 filter_input_array

    filter_input_array

    获取一系列外部变量,并且可以通过过滤器处
  •  使用特定的过滤器过滤一个变量 filter_var

    filter_var

    使用特定的过滤器过滤一个变量
  •  返回所有支持的过滤器的列表 filter_list

    filter_list

    返回所有支持的过滤器的列表
  •  检查指定类型的变量是否存在 filter_has_var

    filter_has_var

    检查指定类型的变量是否存在